package acmcoder_xiaomi;

import java.util.Scanner;

class Solution1 {
    int getFloor(int n){
        int[] arr = new int[n];
        arr[0] = 1;
        arr[1] = 1;
        int num = 2;
        for(int i=2;i<n;i++){
            arr[i] = arr[i-1]+arr[i-2];//规律是当前数的个数是之前两个数个数的和，5有5个，3和4分别有2、3个
            num += arr[i];
            if(num > n){
                return (num- arr[i]);
            }
        }
        return 0;
    }
    public static void main(String args[]){
        Scanner input=new Scanner(System.in);
//        String str=input.next();
//        String str="0,1,0,2,1,0,1,3,2,1,2,1";
        int n=input.nextInt();
//        System.out.println(str);
//        String[] strl=str.split(",");
//        int[] nums=new int[strl.length];
//        for (int i=0;i<strl.length;i++) {
//            nums[i]=Integer.parseInt(strl[i]);
//        }
        Solution1 s= new Solution1();
        int result=s.getFloor(n);
        System.out.println(result);
    }
}
